package org.yagnus.stats.samplers.discrete.withoutreplacement;

import java.util.List;

/**
 * 
 * @author hc.busy
 * 
 *         This class uses a modified redblack tree from TreeMap class to store
 *         an updatable double range of probability in order to implement a
 *         sampler that has worst case as well as average run time nlogn. Useful
 *         for unknown distributions.
 * 
 *         TODO: write this class.
 */
public class TreeSampler<BASETYPE> extends WithoutReplacementSampler<BASETYPE> {

	@Override
	public BASETYPE take() {
		throw new UnsupportedOperationException("Not supported yet.");
	}

	@Override
	protected void _init(List<BASETYPE> t, List<Double> weights) {
		throw new UnsupportedOperationException("Not supported yet.");
	}

	@Override
	public void addSample(BASETYPE t, double w) {
		throw new UnsupportedOperationException("Not supported yet.");
	}

	@Override
	public int remaining() {
		throw new UnsupportedOperationException("Not supported yet.");
	}

	@Override
	public void removeSample(BASETYPE t) {
		throw new UnsupportedOperationException("Not supported yet.");
	}

	public TreeSampler(List<BASETYPE> t, List<Double> weights) {
		super(t, weights);
	}

	public TreeSampler(List<BASETYPE> t) {
		super(t);
	}

	public void reset() {
		throw new UnsupportedOperationException("Not supported yet.");
	}

}
